-
Notifications
You must be signed in to change notification settings - Fork 8.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
box2d kengz vs py #1120
box2d kengz vs py #1120
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are you sure we can't just have a single box2d that works on mac and linux? It looks like box2d-py was made by openai to fix this, could we fix box2d-py to work on mac? https://pypi.org/project/box2d-py/
The gist of the problem is follows - the pybox2d build command (the one that builds libraries) is not actually being executed when installing from pypi (specifically, |
Well, if we're unwilling to update our custom python package for box2d, could we have setup.py dynamically depend on box2d-py or the other box2d based on platform.system(), or does that not work? Adding a note to the README puts the work on the user who will probably just think our code is broken since it doesn't work even after following the install instructions. |
Fair point... We can definitely do the latter, and let me spend another half-hour on trying to fix the pybox2d or box2d-py package - maybe there is some simple solution after all. |
One difference is that |
Compiling a wheel for mac with But of course, that one seems to fail on linux, while |
yeah, that's what I have been thinking too, comparing them now |
ugh it looks like bdist_wheel it is actually broken on both; but python file that is exported from swig interface has a version compatible with osx in box2d-kengz and the version compatible with linux in box2d-py :( hence one works in one case and the other - in the other case |
Yeah, that's kinda gross. It looks like gym-retro overrides |
Yeah, the fix I was thinking of is also along these lines, but rather to override install so that it copies newly generated *.py files to where they need to go (the correct files are generated, but *.py files are copied before building, so the correct files end up never being used) |
whew I think I fixed it, now we just need to release the pypi package |
Nice! |
Are we going to have some fork of pybox2d at like openai/box2d-py? |
oh, and now I see how the pybox2d CI works - they use swig3.0 instead of default swig :/ Still looks ugly to me. |
openai/box2d-py#1 (for some reason I cannot add @christopherhesse as a reviewer) |
Nice, are we dropping py27 support here as well? |
Well... It was not actually tested with py27 and I am pretty sure tests won't work with py27 (like some extra magic is needed to make that work). I thought it is being at the end of its life, but, apparently, not: https://legacy.python.org/dev/peps/pep-0373/ |
yeah, there are failures like
with python2.7 (apparently, related to openai/mujoco-py#261). |
@christopherhesse are you ok with merging this? |
LGTM! |
* try build with box2d-kengz * test box2d envs * use box2d-py in tox.ini for tests * box2d-py instead of box2d-kengz in box2d dependencies * test dependencies in tox.ini use dependencies in setup.py * further cleanups of tox.ini * further cleanups * added scipy to list of requirements * added a note about box2d-kengz into README * build box2d from scratch, add a note to README about it * use box2d-py>=2.3.4 * removed box2d installation instructions from README
Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120.
Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120.
Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120.
Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120.
Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120.
* Fix Box2D in fresh install (#334) Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120. * Cleanup (#334) * Cleanup extra pip (#334) Remove pip box2d-py in - setup_linux.sh - setup_osx.sh - Dockerfile.ci * Upgrade gym to 0.10.8 (#334) * Remove assertion for Mujoco viewer close This problem is resolved in #340 * Close all env * Remove deadcode KNOWN_GYM_CLOSE_BROKEN
* Fix Box2D in fresh install (#334) Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120. * Cleanup (#334) * Cleanup extra pip (#334) Remove pip box2d-py in - setup_linux.sh - setup_osx.sh - Dockerfile.ci * Upgrade gym to 0.10.8 (#334) * Remove assertion for Mujoco viewer close This problem is resolved in #340 * Close all env * Remove deadcode KNOWN_GYM_CLOSE_BROKEN
* Fix Box2D in fresh install (#334) Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120. * Cleanup (#334) * Cleanup extra pip (#334) Remove pip box2d-py in - setup_linux.sh - setup_osx.sh - Dockerfile.ci * Upgrade gym to 0.10.8 (#334) * Remove assertion for Mujoco viewer close This problem is resolved in #340 * Close all env * Remove deadcode KNOWN_GYM_CLOSE_BROKEN
* Fix Box2D in fresh install (#334) Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120. * Cleanup (#334) * Cleanup extra pip (#334) Remove pip box2d-py in - setup_linux.sh - setup_osx.sh - Dockerfile.ci * Upgrade gym to 0.10.8 (#334) * Remove assertion for Mujoco viewer close This problem is resolved in #340 * Close all env * Remove deadcode KNOWN_GYM_CLOSE_BROKEN
* Fix Box2D in fresh install (#334) Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120. * Cleanup (#334) * Cleanup extra pip (#334) Remove pip box2d-py in - setup_linux.sh - setup_osx.sh - Dockerfile.ci * Upgrade gym to 0.10.8 (#334) * Remove assertion for Mujoco viewer close This problem is resolved in #340 * Close all env * Remove deadcode KNOWN_GYM_CLOSE_BROKEN
* Fix Box2D in fresh install (#334) Before box2d-py 2.3.4, box2d-py works on Linux but breaks on OSX, and Box2D-kengz works on OSX but breaks on Linux. box2d-py 2.3.4 fixes issue on OSX and now works on both platforms, and is actively by OpenAI. See openai/gym#1120. * Cleanup (#334) * Cleanup extra pip (#334) Remove pip box2d-py in - setup_linux.sh - setup_osx.sh - Dockerfile.ci * Upgrade gym to 0.10.8 (#334) * Remove assertion for Mujoco viewer close This problem is resolved in #340 * Close all env * Remove deadcode KNOWN_GYM_CLOSE_BROKEN
* try build with box2d-kengz * test box2d envs * use box2d-py in tox.ini for tests * box2d-py instead of box2d-kengz in box2d dependencies * test dependencies in tox.ini use dependencies in setup.py * further cleanups of tox.ini * further cleanups * added scipy to list of requirements * added a note about box2d-kengz into README * build box2d from scratch, add a note to README about it * use box2d-py>=2.3.4 * removed box2d installation instructions from README
No description provided.